Electric power steering apparatus

ABSTRACT

An electric power steering apparatus includes: a rotation speed detecting unit which detects a rotation speed of the electric motor; a compensation current determining unit which determines an instruction value of a compensation current to flow through the electric motor to suppress torque ripples due to distortion of an induced electromotive force waveform of the electric motor in accordance with a load correspondence quantity as a physical quantity corresponding to a load of the electric motor and the rotation speed detected by the rotation speed detecting unit; a correcting unit which corrects the current target value on the basis of the compensation current instruction value; and a control unit which performs a feedback control on the electric motor so that a current having the current target value as corrected by the correcting unit flows through the electric motor.

BACKGROUND OF THE INVENTION

The present invention relates to an electric power steering apparatus inwhich an electric motor gives steering assist force to a steeringmechanism of a vehicle and, more specifically, to the reduction oftorque ripples of the electric motor of an electric power steeringapparatus.

Electric power steering apparatus in which steering assist force isgiven to a steering mechanism by driving an electric motor in accordancewith steering torque that is applied to a steering wheel by a driver areused conventionally.

Incidentally, in electric motors, ripples necessarily occur in outputtorque. And the torque ripple is generally classified into one (called“mechanical ripple” or “cogging torque”) that is caused by structuralfactors such as the number of poles and the number of slots of the motorand one (hereinafter referred to as “electric ripple”) that is caused bydeviation of an induced electromotive force waveform of the motor fromits ideal waveform (a DC waveform in the case of a motor with a brush ora sinusoidal wave (for each phase) in the case of a3-phase-sinusoidal-wave-driven brushless motor). In electric powersteering apparatus, a complaint is sometimes made about deterioration insteering feeling due to torque ripples. And motor makers are makingefforts to minimize torque ripples. However, of the above kinds oftorque ripples, the electric ripple appears as ripples whose magnitudeis proportional to the motor load (i.e., motor current or output torque)and hence is particularly problematic in electric power steeringapparatus in which importance is attached to the smoothness of the motoroutput torque.

In the above circumstances, methods for reducing torque ripples bymaking improvements in the motor driving method were proposed in theart. For example, to reduce torque ripples in a3-phase-sinusoidal-wave-driven brushless motor, a technique was proposed(refer to non-patent document 1) in which optimum d-axis and q-axiscurrent waveforms (having periodic variations) for canceling outelectric ripples due to distortion of induced electromotive forcewaveforms are determined on the basis of measurement data of no-loadinduced electromotive force (waveforms of those data are distorted fromsinusoidal waves) This technique makes it possible to almost eliminatetorque ripples in a constant-speed rotation state even with a loadvariation by increasing the amplitudes of compensation currents havingthe thus-determined d-axis and q-axis current waveforms in proportion tothe load.

Patent Document 1

JP-A-11-191992

Non-patent Document 1

Yoshitada Chin and Takashi Sekiguchi, “High-Efficiency, Low-TorqueControl of Permanent Magnet Synchronous Motor Using a Current thatFollows Induced Electromotive Force Vectors,” The Transactions D of TheInstitute of Electrical Engineers of Japan, The Institute of ElectricalEngineers of Japan, Vol. 120, No. 4, pp. 559-565, 2000.

However, in motors used in electric power steering apparatus, therotation speed varies every moment depending on not only the loadvariation but also the drive situation. Therefore, electric ripplescannot be reduced sufficiently by applying the above technique as it isto an electric power steering apparatus.

SUMMARY OF THE INVENTION

An object of the present invention is therefore to provide an electricpower steering apparatus capable of reducing electric ripplessufficiently irrespective of the drive situation.

A first invention provides an electric power steering apparatus forgiving steering assist force to a steering mechanism of a vehicle bydriving an electric motor on the basis of a current target value that isdetermined in accordance with a manipulation for steering the vehicle,characterized by comprising:

a rotation speed detecting unit for detecting a rotation speed of theelectric motor;

a compensation current determining unit for determining an instructionvalue of a compensation current to flow through the electric motor tosuppress torque ripples due to distortion of an induced electromotiveforce waveform of the electric motor in accordance with a loadcorrespondence quantity as a physical quantity corresponding to a loadof the electric motor and the rotation speed detected by the rotationspeed detecting unit;

a correcting unit for correcting the current target value on the basisof the compensation current instruction value determined by thecompensation current determining unit; and

a control unit for performing a feedback control on the electric motorso that a current having the current target value as corrected by thecorrecting unit flows through the electric motor, the control unit beingpart of a current control system of the electric motor that uses thefeedback control.

In the first invention, the compensation current for suppressing torqueripples (electric ripples) is varied in accordance with not only themotor load but also the motor rotation speed. Therefore, even if themotor rotation speed varies every moment depending on not only the motorload variation but also the drive situation, proper compensation currentcan be supplied to the motor and electric ripples can be reducedsufficiently.

A second invention is characterized in that, in the first invention, thecompensation current determining unit includes:

an amplitude determining unit for determining an amplitude of thecompensation current instruction value so that an amplitude of thecompensation current to flow through the electric motor becomesproportional to the load correspondence quantity; and

an amplitude correcting unit for correcting the determined amplitude inaccordance with the rotation speed so as to compensate for a gainreduction due to a frequency characteristic of the current controlsystem.

In the second invention, not only is the amplitude of the compensationcurrent for suppressing torque ripples (electric ripples) varied inproportion to the motor load, but also the amplitude of the compensationcurrent instruction value is corrected so that a gain reduction due tothe frequency characteristic of the current control system iscompensated for. Therefore, even if the motor rotation speed variesevery moment depending on not only the motor load variation but also thedrive situation, compensation current having a proper amplitude can besupplied to the motor, whereby electric ripples can be suppressedsufficiently.

A third invention is characterized in that, in the second invention, thecompensation current determining unit further includes a phasecorrecting unit for correcting a phase of the compensation currentinstruction value in accordance with the rotation speed so as tocompensate for a phase delay due to the frequency characteristic of thecurrent control system.

In the third invention, the phase of the compensation currentinstruction value is corrected so that a phase delay due to thefrequency characteristic of the current control system is compensatedfor. Therefore, even if the motor rotation speed varies every momentdepending on the drive situation, compensation current having a properphase can be supplied to the motor, whereby electric ripples can besuppressed more sufficiently.

A fourth invention is characterized in that, in the first invention, thecompensation current determining unit includes

an amplitude determining unit for determining an amplitude of thecompensation current instruction value so that an amplitude of thecompensation current to flow through the electric motor becomesproportional to the load correspondence quantity; and

a phase correcting unit for correcting a phase of the compensationcurrent instruction value in accordance with the rotation speed so as tocompensate for a phase delay due to the frequency characteristic of thecurrent control system.

In the fourth invention, not only is the amplitude of the compensationcurrent for suppressing torque ripples (electric ripples) varied inproportion to the motor load, the phase of the compensation currentinstruction value is corrected so that a phase delay due to thefrequency characteristic of the current control system is compensatedfor. Therefore, even if the motor rotation speed varies every momentdepending on the drive situation, compensation current having a properphase can be supplied to the motor, whereby electric ripples can besuppressed sufficiently.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram showing the configuration of an electricpower steering apparatus according to an embodiment of the presentinvention together with a related part of a vehicle configuration.

FIG. 2 is a schematic diagram illustrating a 3-phase AC coordinatesystem and a d-q coordinate system in a 3-phase brushless motor.

FIG. 3 is a block diagram showing the configuration of an ECU that is acontroller of the electric power steering apparatus according to theembodiment.

FIG. 4 is a block diagram showing the functional configuration of atorque ripple compensating unit according to the embodiment.

FIG. 5 is a voltage waveform graph of no-load induced electromotiveforces (i.e., induced voltages) of the brushless motor according to theembodiment.

FIG. 6 is a current waveform graph of compensation currents to flowthrough the motor for torque ripple compensation in the embodiment.

FIG. 7 is a Bode diagram showing a frequency characteristic of a currentcontrol system according to the embodiment.

FIG. 8 is a waveform graph showing a torque ripple compensation effectin the embodiment.

FIG. 9 is a waveform graph showing a torque ripple compensation effectin the embodiment.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

An embodiment of the present invention will be hereinafter describedwith reference to the accompanying drawings.

<1. Entire Configuration>

FIG. 1 is a schematic diagram showing the configuration of an electricpower steering apparatus according to an embodiment of the inventiontogether with a related part of a vehicle configuration. This electricpower steering apparatus is equipped with a steering shaft 102 one endof which is fastened to a steering wheel 100 that is a manipulating unitfor steering, a rack-pinion mechanism 104 that is linked to the otherend of the steering shaft 102, a torque sensor 3 for detecting steeringtorque that is applied to the steering shaft 102 as a result of amanipulation on the steering wheel 100, a brushless motor 6 forgenerating steering assist force for reducing the load on the driverwhen he or she performs a steering wheel manipulation (steeringmanipulation), a ball thread driving unit 61 for transmitting thesteering assist force to a rack shaft, a position detecting sensor 62such as a resolver for detecting a rotation position of the rotor of thebrushless motor 6, and an electronic control unit (ECU) 5 that issupplied with electric power from a vehicle battery via an ignitionswitch 9 and controls the driving of the motor 6 on the basis of sensorsignals from the torque sensor 3, a vehicle speed sensor 4, and theposition detecting sensor 62. When the driver manipulates the steeringwheel 100 in the vehicle that is mounted with the above electric powersteering apparatus, the torque sensor 3 detects steering torque of themanipulation and outputs a steering torque signal Ts indicating thesteering torque. On the other hand, the vehicle speed sensor 4 detects aspeed of the vehicle (vehicle speed) and outputs a vehicle speed signalVs indicating the vehicle speed. The ECU 5 as a controller drives themotor 6 on the basis of the steering torque signal Ts, the vehicle speedsignal Vs, and a rotor rotation position that is detected by theposition detecting sensor 62. As a result, the motor 6 generatessteering assist force, which is applied to the rack shaft via the ballthread driving unit 61, whereby the load on the driver is reduced in hisor her steering manipulation. That is, the rack shaft is reciprocated bythe sum of the steering force of the steering torque resulting from thesteering wheel manipulation and the steering assist force generated bythe motor 6. The two ends of the rack shaft is linked to each wheel 108via a link member that is composed of a tie rod and a knuckle arm. Thedirection of the wheels 108 is changed as the rack shaft isreciprocated.

<2. Outline of Motor Control>

The motor 6 of this embodiment is a sinusoidal-wave-driven brushlessmotor that is composed of a rotor (hereinafter also referred to as“rotary field magnet”) as a field magnet that is a permanent magnet anda stator having 3-phase coils (u phase, v phase, and w phase).

Target values of currents to flow through the u-phase, v-phase, andw-phase coils to cause the motor 6 to generate proper steering assistforce, that is, current instruction values of the respective phases, aregiven by the following equations:i* _(u) =I*sin θ_(re)  (1a)i* _(v) =I*sin (θ_(re)−2π/3)  (1b)i* _(w) =I*sin (θ_(re)−4π/3)=−i* _(u) −i* _(v)  (1c)where i*_(u) is the u-phase current instruction value, i*_(v) is thev-phase current instruction value, i*_(w) is the w-phase currentinstruction value, and θ_(re) is the angle (called “electric angle”) ofthe rotary field as measured clockwise with respect to the u-phase coil(see FIG. 2). The electric angle θ_(re) is given by θ_(re)=p·θ_(m) whereθ_(m) is the mechanical angle of the rotor and the number of poles isequal to 2p.

Usually, an instruction value of a voltage that should be applied to abrushless motor is obtained by a control calculation based on adeviation between a current target value and a motor current detectionvalue. To reduce a phase delay, in this control calculation currentinstruction values are expressed by in a d-q coordinate system and avoltage instruction value is calculated on the basis of d-axis andq-axis current instruction values. The d-q coordinate system is arotating coordinate system that rotates in synchronism with a rotaryfield magnet (rotor) that is a permanent magnet. The d axis is in themagnetic flux direction of the rotary field and the q axis is in thedirection that is perpendicular to the d axis. Although the currentinstruction values i*_(u), i*_(v), and i*_(w) of the respective phasesare AC values, in the d-q coordinate system the current instructionvalues are expressed as DC values.

The current instruction values of the respective phases of Equations(1a)-(1c) are expressed as follows in the d-q coordinate system:i* _(d)=0  (2a)i* _(q)=√{square root over (3/2)}·I*  (2b)where i*_(d) and i*_(q) are the d-axis and q-axis current instructionvalues, respectively.

On the other hand, as for motor currents, a d-axis current detectionvalue i_(d) and a q-axis current detection value i_(q) are calculated asfollows from detection results of a u-phase current and a v-phasecurrent that are obtained by current detectors:i _(d)=√{square root over (2)}{i _(v)sin θ_(re) −i _(u)sin(θ_(re)−2π/3)}  (3a)i _(q)=√{square root over (2)}{i _(v)cos θ_(re) −i _(u)cos(θ_(re)−2π/3)}  (3b)where i_(u) is the u-phase current detection value, i_(v) is the v-phasecurrent detection value, and θ_(re) is the above-mentioned electricangle.

In this embodiment, a current control unit 200 (described later)performs a feedback control on the motor 6 so that a deviatione_(d)=i*_(d)−i_(d) between the instruction value i*_(d) and thedetection value i_(d) of the d-axis current and a deviatione_(q)=i*_(q)−i_(q) between the instruction value i*_(q) and thedetection value i_(q) of the q-axis current are canceled out.

<3. Configuration of Controller>

In this embodiment, the above-described feedback control is performed onthe motor 6 in the ECU 5 that is a controller of the electric powersteering apparatus. FIG. 3 is a block diagram showing the configurationof the ECU 5. The ECU 5 is composed of a phase compensator 112, amicrocomputer 10, and a motor driving unit. By executing prescribedprograms stored in an internal memory, the microcomputer 10 functions asa motor control unit that consists of a target current calculating unit114, an instruction current direction specifying unit 116, a convergencecorrecting unit 117, a torque ripple compensating unit 118, adders 120,121, and 122, subtracters 123 and 124, a d-axis current PI control unit126, a q-axis current PI control unit 128, a d-q/3-phase AC coordinatesystem converting unit 132, a sign-inverting adder 134, a 3-phase AC/d-qcoordinate system converting unit 138, a sine ROM table 140, and a rotorangular velocity calculating unit 142. The motor driving unit, which ishardware (i.e., circuits) for driving the 3-phase (u phase, v phase, andw phase) brushless motor 6 on the basis of voltage instruction valuesthat are output from the microcomputer 10 as the motor control unit, iscomposed of a 3-phase PWM modulating unit 150, a motor driving circuit152, a u-phase current detector 156, a v-phase current detector 154, anda rotor angle position detector 162.

In this embodiment, steering torque that is applied to the steeringshaft 102 as a result of a manipulation on the steering wheel 100 isdetected by the torque sensor 3 and a steering torque signal Ts that isoutput from the torque sensor 3 is input to the ECU 5. Further, avehicle speed is detected by the vehicle speed sensor 4 and a vehiclespeed signal Vs that is output from the vehicle speed sensor 4 is inputto the CPU 5. In the ECU 5, the phase compensator 112 performs phasecompensation on the received steering torque signal Ts and aphase-compensated signal is input to the target current calculating unit114. On the other hand, the vehicle speed signal Vs that is output fromthe vehicle speed sensor 4 is input to the target current calculatingunit 114 and the convergence correcting unit 117 of the ECU 5. A sensorsignal Sr that is output from the position detecting sensor 62 attachedto the motor 6 is input to the rotor angle position detector 162, whichoutputs a signal indicating a rotation position of the rotary fieldmagnet (permanent magnet) that is the rotor of the motor 6, that is, anelectric angle θ_(re). The signal indicating the electric angle θ_(re)is input to the sine ROM table 140 and the rotor angular velocitycalculating unit 142.

The target current calculating unit 114 calculates a current targetvalue It, i.e., a value of current to be supplied to the motor 6, on thebasis of the steering torque signal Ts and the vehicle speed signal Vs.More specifically, the target current calculating unit 114 calculates acurrent target value It by referring to a table (called “assist map”)that is stored in advance in the target current calculating unit 114 andindicates a relationship between the steering torque and the targetvalue of current to be supplied to the motor 6 to generate propersteering assist force with the vehicle speed as a parameter. The currenttarget value It is a sign-added value indicating a current instructionvalue corresponding to a q-axis current that is given by theabove-mentioned Equation (2b). The sign (positive or negative) indicatesa steering assistance direction, that is, which of torque in a directionof assisting rightward steering or torque in a direction of assistingleftward steering to cause the motor 6 to generate.

The instruction current direction specifying unit 116 generates a signalindicating a sign (positive or negative) of the current target value It,that is, a signal Sdir indicating a steering assistance direction(hereinafter referred to as “direction signal”) The direction signalSdir is input to the convergence correcting unit 117. The rotor angularvelocity calculating unit 142 a rotor angular velocity ω_(re) on thebasis of the signal indicating the electric angle θ_(re) correspondingto the rotor angle. A signal indicating the rotor angular velocityω_(re) is also input to the convergence correcting unit 117. On thebasis of this signal and the vehicle speed signal Vs, the convergencecorrecting unit 117 calculates a compensation current value i_(c) to beused for securing high vehicle convergence. The adder 120 adds thecompensation current value i_(c) to the current target value It, andoutputs a resulting addition value as a q-axis basic current instructionvalue i*_(q0). The q-axis basic current instruction value i*_(q0), whichis a current instruction value corresponding to torque that the motor 6should generate for steering assistance, is input to the adder 122. Onthe other hand, a d-axis basic current instruction value i*_(d0)=0 isinput to the adder 121 because a d-axis current is irrelevant to torque.

The torque ripple compensating unit 118, which functions as acompensation current determining mean for determining instruction valuesof compensation currents to flow through the motor 6 to suppress torqueripples (hereinafter also referred to as “electric ripples”) resultingfrom distortion of induced electromotive force waveforms in the motor 6,determines, as compensation current instruction values, a d-axis currentcompensation value Δi_(d) and a q-axis current compensation value Δi_(q)on the basis of the electric angle θ_(re) and the q-axis basic currentinstruction value i*_(q0) (described later in detail). The currentcompensation values Δi_(d) and Δi_(q) are input to the respective adders121 and 122. The adder 121 calculates a d-axis current instruction valuei*_(d) by adding the received d-axis current compensation value Δi_(d)to the d-axis basic current instruction value i*_(d0). The adder 122calculates a q-axis current instruction value i*_(q) by adding thereceived q-axis current compensation value Δi_(q) to the q-axis basiccurrent instruction value i*_(q0). That is,i* _(d) =i* _(d0) +Δi _(d)  (4a)i* _(q) =i* _(q0) +Δi _(q).  (4b)Equations (4a) and (4b) show that the target values of currents to flowthrough the motor 6 to obtain proper steering assist force are correctedon the basis of the d-axis current compensation value Δi_(d) and theq-axis current compensation value Δi_(q) to suppress electric ripples.

The u-phase current detector 156 and the v-phase current detector 154detects a u-phase current and a v-phase current, respectively, amongcurrents that are supplied from the motor driving circuit 152 to themotor 6, and outputs a u-phase current detection value i_(u) and av-phase current detection value i_(v), respectively. The sine ROM table140, which stores values of the angle θ and values of sin θ in such amanner that they are correlated with each other, outputs a sine valuesin θ_(re) corresponding to an electric angle θ_(re) that is indicatedby the signal supplied from the rotor angle position detector 162. The3-phase AC/d-q coordinate system converting unit 138 converts theabove-mentioned u-phase current detection value i_(u) and v-phasecurrent detection value i_(v) into values in the d-q coordinate system,that is, a d-axis current detection value i_(d) and a q-axis currentdetection value i_(q) according to Equations (3a) and (3b) (shown below)using the sine value sin θ_(re).i _(d)=√{square root over (2)}{i _(v)sin θ_(re) −i _(u)sin(θ_(re)−2π/3)}i _(q)=√{square root over (2)}{i _(v)cos θ_(re) −i _(u)cos(θ_(re)−2π/3)}The d-axis current detection value i_(d) and the q-axis currentdetection value i_(q) are input to the respective subtracters 123 and124.

The subtracter 123 calculates a d-axis current deviatione_(d)=i*_(d)−i_(d) that is a deviation between the d-axis currentinstruction value i*_(d) supplied from the adder 121 and the d-axiscurrent detection value i_(d) supplied from the 3-phase AC/d-qcoordinate system converting unit 138. The d-axis current PI controlunit 126 calculates a d-axis voltage instruction value v*_(d) byperforming a proportional-plus-integral control operation on the d-axiscurrent deviation e_(d). On the other hand, the subtracter 124calculates a q-axis current deviation e_(q)=i*_(q)−i_(q) that is adeviation between the q-axis current instruction value i*_(q) suppliedfrom the adder 122 and the q-axis current detection value i_(q) suppliedfrom the 3-phase AC/d-q coordinate system converting unit 138. Theq-axis current PI control unit 128 calculates a q-axis voltageinstruction value v*_(q) by performing a proportional-plus-integralcontrol operation on the q-axis current deviation e_(q). That is, the PIcontrol units 126 and 128 calculates a d-axis voltage instruction valueV*_(d) and a q-axis voltage instruction value v*_(q) according to thefollowing equations:v* _(d) =K _(p) {e _(d)+(1/T _(i))∫e _(d) dt}  (5a)v* _(q) =K _(p) {e _(q)+(1/T _(i))∫e _(q) dt}  (5b)where K_(p) is a proportional gain and T_(i) is an integration time.

The d-q/3-phase AC coordinate system converting unit 132 converts thed-axis voltage instruction value v*_(d) and the q-axis voltageinstruction value v*_(q) into a u-phase voltage instruction value v*_(u)and a v-phase voltage instruction value v*_(v) in the 3-phase ACcoordinate system. The sign-inverting adder 134 calculates a w-phasevoltage instruction value v*_(w) on the basis of the u-phase and v-phasevoltage instruction values v*_(u) and v*_(v). That is, voltageinstruction values v*_(u), v*_(v), and v*_(w) of the respective phasesare calculated according to the following equations:v* _(u)=√⅔{v* _(d)cos θ_(re) −v* _(q)sin θ_(re)}  (6a)v* _(v)=√⅔{v* _(d)cos (θre−2π/3)−v* _(q)sin (θ_(re)−2π/3)}  (6b) v* _(w) =−v* _(u) −v* _(v).  (6c)

The 3-phase PWM modulating unit 150 generates PWM signals Su, Sv, and Swwhose duty ratios reflect the thus-calculated voltage instruction valuesv*_(u), v*_(v), and v*_(w) of the respective phases.

The motor driving circuit 152, which is, for example, a PWM voltage typeinverter using such switching elements as power MOS transistors,generates voltages v_(u), v_(v), and v_(w) of the respective phases tobe applied to the brushless motor 6 by turning on and off the switchingelements according to the PWM signals Su, Sv, and Sw. The voltagesv_(u), v_(v), and v_(w) of the respective phases are output from the ECU5 and applied to the motor 6. Currents flow through the u-phase,v-phase, and w-phase coils (not shown) of the motor 6 according to thevoltages v_(u), v_(v), and v_(w), and the motor 6 generates torque Tmfor steering assistance according to those currents.

Among the currents flowing through the motor 6, as described above, theu-phase current i_(u) and the v-phase current i_(v) are detected by theu-phase current detector 156 and the v-phase current detector 154,respectively, and then converted into current values i_(d) and i_(q) inthe d-q coordinate system by the 3-phase AC/d-q coordinate systemconverting unit 138. Of the d-axis and q-axis current values i_(d) andi_(q) in the d-q coordinate system are input to the subtracters 123 and124, respectively. To cause the motor 6 to generate desired steeringassist force, a feedback control (called “current control”) is performedso that the d-axis and q-axis current detection value i_(d) and i_(q)become equal to the d-axis and q-axis current instruction values i*_(d)and i*_(q), respectively.

<4. Current Control System>

As described above, in this embodiment, target values of motor currentsare set so that steering assistance is effected properly in accordancewith steering torque and a vehicle speed. The target values arecorrected for the purpose of electric ripple compensation, for example,and a feedback control is performed so that currents having correctedtarget values (i.e., d-axis and q-axis current instruction values i*_(d)and i*_(q)) flow through the motor 6. The part 200 (hereinafter referredto as “current control unit”) of the ECU 5 that performs the abovecurrent control is enclosed by a broken line in FIG. 3. In thisembodiment, the motor driving unit of the current control unit 200 whichis a control unit for the motor 6 is implemented by hardware, and theother parts is implemented by software, that is, by executing prescribedprograms with the microcomputer 10 in the above-described manner. Thecurrent control unit 200, the motor 6, and the position detecting sensor62 constitute a current control system having a feedback loop.

FIG. 7 is a Bode diagram showing a frequency characteristic of thecurrent control system. The Bode diagram of FIG. 7 relating to theclosed-loop transfer function of the current control system isapplicable to either of a case that the input is the d-axis currentinstruction value i*_(d) and the output is the d-axis current detectionvalue i_(d) and a case that the input is the q-axis current instructionvalue i*_(q) and the output is the q-axis current detection value i_(q).As shown in FIG. 7, in a practical frequency range the current controlsystem has a frequency characteristic that the gain decreases from 1 (0in dB) and the phase delay increases as the frequency increases.

<5. Configuration and Operation of Torque Ripple Compensating Unit>

As described above, instruction values of the compensation currents toflow through the motor 6 to suppress electric ripples, that is, a d-axiscurrent compensation value Δi_(d) and a q-axis current compensationvalue Δi_(q) are determined by the torque ripple compensating unit 118.In this embodiment, the torque ripple compensating unit 118 is alsoimplemented by software by executing a prescribed program with themicrocomputer 10. FIG. 4 is a block diagram showing the functionalconfiguration of the torque ripple compensating unit 118. The torqueripple compensating unit 118 is equipped with a differentiator 12, afrequency calculating unit 14, a gain/phase determining unit 16, asubtracter 18, a basic compensation current determining unit 20, anamplitude determining unit 22, a correction factor calculating unit 24,and two multipliers 26 and 28. A signal indicating an electric angleθ_(re) is input to the differentiator 12 and the subtracter 18, and aq-axis basic current instruction value i*_(q0) is input to the amplitudedetermining unit 22.

The differentiator 12 calculates a rotor angular velocity ω_(re), thatis, a value corresponding to a rotation angular velocity of the motor 6(i.e., electric-angle-converted rotation angular velocity), bydifferentiating the signal indicating the electric angle θ_(re). Thefrequency calculating unit 14 calculates a frequency f (corresponds to afrequency of compensation currents) of electric ripples of the motor 6on the basis of the rotor angular velocity ω_(re). That is, a frequencyf is calculated according to the following equation:f=S· _(ωre) /2π  (7)where S is the number of slots of the motor 6.

The gain/phase determining unit 16 retains a frequency characteristicmap corresponding to the Bode diagram of FIG. 7, that is, a frequencycharacteristic map 16 a representing the frequency characteristic of thecurrent control system (more specifically, data corresponding to thefrequency characteristic map 16 a are stored in advance in a memoryprovided inside the microcomputer 10). The gain/phase determining unit16 determines a gain G and a phase difference Δθ_(e) of the currentcontrol system that correspond to the frequency f by referring to thefrequency characteristic map 16 a. As mentioned above, in the currentcontrol system, the gain decreases from 1 and the phase delay increasesas the frequency increases. Therefore, the gain G determined by thegain/phase determining unit 16 is lower than or equal to 1 (has anegative value in dB) and the phase difference Δθ_(e) has a negativevalue. The gain G and the phase difference Δθ_(e) are input to thecorrection factor calculating unit 24 and the subtracter 18,respectively.

The subtracter 18 subtracts the phase difference Δθ_(e) from theelectric angle θ_(re) and outputs a subtraction result θ_(re)−Δθ_(e) asa corrected electric angle θ_(mre). This subtraction means compensationfor the phase delay of the frequency characteristic of the currentcontrol system. The corrected electric angle θ_(mre) obtained throughthe compensation for the phase delay of the current control system isinput to the basic compensation current determining unit 20.

The basic compensation current determining unit 20 retains, as acompensation current map 20 a, a table representing a relationshipbetween the electric angle and the d-axis and q-axis currentcompensation values (more specifically, data corresponding to thecompensation current map 20 a are stored in advance in a memory providedinside the microcomputer 10). The basic compensation current determiningunit 20 determines a d-axis current unit compensation value Δi_(d0) anda q-axis current unit compensation value Δi_(q0) corresponding to thecorrected electric angle θ_(mre) by referring to the compensationcurrent map 20 a. A method for generating the compensation current map20 a will be described below.

Torque ripples (electric ripples) occur if sinusoidal currents arecaused to flow as currents i_(u), i_(v), and i_(w) of the respectivephases in a state that no-load induced electromotive force waveforms ofthe motor 6 are distorted. However, as described in non-patent document1, currents i_(u), i_(v), and i_(w) of the respective phases capable ofkeeping the output torque of the motor 6 at a constant value (e.g., 1N.m) and preventing electric ripples can be determined if no-loadinduced electromotive force instantaneous values e_(0u), e_(0v), ande_(0w) of the respective phases at each time point are known. Forexample, current values i_(u), i_(v), and i_(w) of the respective phasescapable of keeping the output torque of the motor 6 at a constant valueT and preventing electric ripples can be determined according to thefollowing equations: $\begin{matrix}\begin{matrix}{i_{u} = {\left\{ {\left( {e_{0u} - e_{0v}} \right) + \left( {e_{0u} - e_{0w}} \right)} \right\}{T/}}} \\{\left\{ {\left( {e_{0u} - e_{0v}} \right)^{2} + \left( {e_{0u} - e_{0w}} \right)^{2} + \left( {e_{0w} - e_{0v}} \right)^{2}} \right\}}\end{matrix} & \left( {8a} \right)\end{matrix}$  i _(v) ={T−(e _(0u) −e _(0w))i _(u)}/(e _(0v) −e_(0w))  (8b)i _(w) ={T−(e _(0u) −e _(0v))i _(u)}/(e _(0w) −e _(0v))  (8c)

A d-axis current value i_(d) and a q-axis current value i_(q) capable ofkeeping the output torque of the motor 6 at the constant value T withoutcausing electric ripples can be determined by converting the currentvalues i_(u), i_(v), and i_(w) of the respective phases obtainedaccording to the above equations into values in the d-q coordinatesystem according to the following equations:i _(d)=√{square root over (2)}{i _(v)sin θ−i _(u)sin (θ−2π/3)}  (9a)i _(q)=√{square root over (2)}{i _(v)cos θ−i _(u)cos (θ−2π/3)}  (9b)where θ is the electric angle.

In this embodiment, a compensation current map 20 a is generated in thefollowing manner. First, as shown in FIG. 5, measurement data of no-loadinduced electromotive force (i.e., induced voltage) instantaneous valuese_(0u), e_(0v), and e_(0w) of the respective phases of the motor 6 areacquired in advance for various electric angle values. Then, a d-axiscurrent value i_(d01) and a q-axis current value i_(q01) that the motor6 requires to output unit torque (1 N.m) without causing electricripples are calculated by using the measurement data (refer to Equations(8a)-(9b)), and a d-axis current value i_(d02) and a q-axis currentvalue i_(q02) that the motor 6 requires to output unit torque in thecase where the no-load induced electromotive force waveforms are notdistorted (in this case, a d-axis current value i_(d02) and a q-axiscurrent value i_(q02) can be determined easily because the output torqueis proportional to the q-axis current and the d-axis current can be setat 0). Differences between the two kinds of current values,Δi_(d0)=i_(d01)−i_(d02) and Δi_(q0)=i_(q01)−i_(q02), are employed as ad-axis current unit compensation value Δi_(d0) and a q-axis current unitcompensation value Δi_(q0). A table that correlates the unitcompensation values Δi_(d0) and Δi_(q0) with the various electric anglevalues is stored in the memory in advance as a compensation current map20 a. For example, d-axis current unit compensation values Δi_(d0) andq-axis current unit compensation values Δi_(q0) that are correlated withelectric angle values as shown in FIG. 6 are determined on the basis ofmeasurement data of no-load induced electromotive force waveforms asshown in FIG. 5, and a compensation current map 20 a is generated on thebasis of those values.

The basic compensation current determining unit 20 determines a q-axiscurrent unit compensation value Δi_(q0) and a d-axis current unitcompensation value Δi_(d0) corresponding to the above-mentionedcorrected electric angle θ_(mre) by referring to the compensationcurrent map 20 a that was generated in the above-described manner. Thethus-determined q-axis current unit compensation value Δi_(q0) and thed-axis current unit compensation value Δi_(d0) are input to theamplitude determining unit 22 as current compensation values per unittorque.

If output torque of the motor 6 is T, a q-axis current compensationvalue Δi_(q) and a d-axis current compensation value Δi_(d) to flowthrough the motor 6 to suppress electric ripples are equal to T timesthe q-axis current unit compensation value Δi_(q0) and the d-axiscurrent unit compensation value Δi_(d0). Therefore, a q-axis currentcompensation value Δi_(q) and a d-axis current compensation value Δi_(d)can be obtained by multiplying the q-axis current unit compensationvalue Δi_(q0) and the d-axis current unit compensation value Δi_(d0) bya coefficient that depends on a physical quantity corresponding to amotor load. For example, a q-axis current compensation value Δi_(q) anda d-axis current compensation value Δi_(d) may be calculated as valuesthat are proportional to a motor load by multiplying the q-axis currentunit compensation value Δi_(q0) and the d-axis current unit compensationvalue Δi_(d0) by a coefficient that depends on a q-axis currentdetection value i_(q) or a q-axis basic current instruction valuei*_(q0) that corresponds to output torque of the motor 6. The amplitudedetermining unit 22 of this embodiment determines a q-axis current basiccompensation value Δi_(q1) and a d-axis current basic compensation valueΔi_(d1) by determining a motor torque value corresponding to a receivedq-axis basic current instruction value i*_(q0) and multiplying theq-axis current unit compensation value Δi_(q0) and the d-axis currentunit compensation value Δi_(d0) by the determined torque value. Thethus-determined q-axis current basic compensation value Δi_(q1) andd-axis current basic compensation value Δi_(d1) are input to themultipliers 26 and 28, respectively.

On the other hand, the correction factor calculating unit 24 calculates,as a correction factor Rm, the reciprocal 1/G of the gain G that isoutput from the gain/phase determining unit 16 as a gain of the currentcontrol system. The correction factor Gm is input to the multipliers 26and 28. The multiplier 26 calculates a q-axis current compensation valueΔi_(q) by multiplying the q-axis current basic compensation valueΔi_(q1) by the correction factor Rm. The multiplier 28 calculates ad-axis current compensation value Δi_(d) by multiplying the d-axiscurrent basic compensation value Δi_(d1) by the correction factor Rm.The multiplication by the correction factor Rm compensates for gainreduction due to the frequency characteristic of the current controlsystem.

The thus-obtained q-axis current compensation value Δi_(q) and d-axiscurrent compensation value Δi_(d) are output from the torque ripplecompensating unit 118, and added, as described above, to the q-axisbasic current instruction value i*_(q0) and the d-axis basic currentinstruction value i*_(d0), respectively (refer to Equations (4a) and(4b)). Resulting q-axis current instruction value i*_(q) and d-axiscurrent instruction value i*_(d) are given to the current control systemincluding the current control unit 200 as target values.

FIGS. 8 and 9 are waveform graphs showing examples of the effect of theabove compensation currents for electric ripple suppression. FIG. 8shows a case that the output torque (target value) of the motor 6 is 1N.m and q-axis current compensation values of waveform C and d-axiscurrent compensation values of waveform D are used. As a result, theactual output torque of the motor 6 changed from torque of waveform A(without compensation) to torque of waveform B (with compensation). Itis seen that torque ripples are suppressed. FIG. 9 shows a case that theoutput torque (target value) of the motor 6 is 3 N.m and q-axis currentcompensation values of waveform C and d-axis current compensation valuesof waveform D that are suitable for this output torque (i.e., motorload) are used. As a result, the actual output torque of the motor 6changed from torque of waveform A (without compensation) to torque ofwaveform B (with compensation). It is seen that torque ripples aresuppressed.

<6. Advantages>

In general, in motors used in electric power steering apparatus, therotation speed varies every moment depending on not only the loadvariation but also the drive situation. Therefore, electric ripplescannot be reduced sufficiently in various drive situations merely byvarying the amplitudes of compensation currents for electric ripplesuppression in proportion to the motor load as in the above-describedconventional technique. That is, since the current control system of themotor 6 has a frequency characteristic, the amplitudes and the phases ofactual compensation currents vary with the rotation speed of the motor 6and hence deviate from the settings.

In contrast, in the embodiment, in setting compensation currentinstruction values for electric ripple suppression, not only a q-axiscurrent basic compensation value Δi_(q1) and a d-axis current basiccompensation value Δi_(d1) that are proportional to a q-axis basiccurrent instruction value i*_(q0) that is a physical quantitycorresponding to a motor load are calculated but also the q-axis currentbasic compensation value Δi_(q1) and the d-axis current basiccompensation value Δi_(d1) are multiplied by a correction factor Rmobtained by the gain/phase determining unit 16 and the correction factorcalculating unit 24 so that a gain reduction due to the frequencycharacteristic of the current control system is compensated for. Aq-axis current compensation value Δi_(q) and a d-axis currentcompensation value Δi_(d) as multiplication results are used ascompensation current instruction values for electric ripple suppression.Therefore, when the rotation speed of the motor 6 has varied with thedrive situation, the amplitudes of the compensation current instructionvalues that are represented by the q-axis current compensation valueΔi_(q) and the d-axis current compensation value Δi_(d) are corrected inaccordance with the rotation speed variation. Further, in theembodiment, an electric angle θ_(re) is corrected in accordance with aphase difference Δθ_(e) (negative value) determined by the gain/phasedetermining unit 16 so that a phase delay due to the frequencycharacteristic of the current control system is compensated for. Aq-axis current unit compensation value Δi_(q0) and a d-axis current unitcompensation value Δi_(d0) corresponding to a corrected electric angleθ_(mre) are calculated by using the compensation current map 20 a, and aq-axis current compensation value Δi_(q) and a d-axis currentcompensation value Δi_(d) (mentioned above) are determined on the basisof the values Δi_(q0) and Δi_(d0).

As described above, in the embodiment, not only the amplitudes of thecompensation currents to flow through the motor 6 to suppress electricripples are varied in accordance with the motor load variation but alsothe amplitudes and the phases of the compensation current instructionvalues are corrected in accordance with the rotation speed of the motor6 (i.e., in accordance with the frequency of the compensation currents)to cancel out the influences of the frequency characteristic of thecurrent control system. Therefore, even if the rotation speed of themotor 6 varies every moment depending on not only the motor loadvariation but also the drive situation, proper compensation currents aresupplied to the motor 6, whereby electric ripples can be suppressedsufficiently.

<7. Modifications>

In the embodiment, the 3-phase brushless motor 6 is used as a drivingsource of the electric power steering apparatus. However, similaradvantages can be obtained by a similar configuration even if abrushless motor the number of phases of which is not equal to three isused.

Even if a DC motor with a brush is used in place of the brushless motor6, advantages similar to the above-described advantages can be obtainedby correcting the amplitudes and the phases of compensation currents fortorque ripple compensation so as to compensate for a gain reduction anda phase delay due to the frequency characteristic of the current controlsystem in setting the compensation currents.

1. An electric power steering apparatus for giving steering assist forceto a steering mechanism of a vehicle by driving an electric motor on thebasis of a current target value that is determined in accordance with amanipulation for steering the vehicle, the electric power steeringapparatus comprising: a rotation speed detecting unit which detects arotation speed of the electric motor; a compensation current determiningunit which determines an instruction value of a compensation current toflow through the electric motor to suppress torque ripples due todistortion of an induced electromotive force waveform of the electricmotor in accordance with a load correspondence quantity as a physicalquantity corresponding to a load of the electric motor and the rotationspeed detected by the rotation speed detecting unit; a correcting unitwhich corrects the current target value on the basis of the compensationcurrent instruction value determined by the compensation currentdetermining unit; and a control unit which performs a feedback controlon the electric motor so that a current having the current target valueas corrected by the correcting unit flows through the electric motor,the control unit being part of a current control system of the electricmotor that uses the feedback control.
 2. The electric power steeringapparatus according to claim 1, wherein the compensation currentdetermining unit includes: an amplitude determining unit whichdetermines an amplitude of the compensation current instruction value sothat an amplitude of the compensation current to flow through theelectric motor becomes proportional to the load correspondence quantity;and an amplitude correcting unit which corrects the determined amplitudein accordance with the rotation speed so as to compensate for a gainreduction due to a frequency characteristic of the current controlsystem.
 3. The electric power steering apparatus according to claim 2,wherein the compensation current determining unit includes a phasecorrecting unit which corrects a phase of the compensation currentinstruction value in accordance with the rotation speed so as tocompensate for a phase delay due to the frequency characteristic of thecurrent control system.
 4. The electric power steering apparatusaccording to claim 1, wherein the compensation current determining unitincludes: an amplitude determining unit which determining an amplitudeof the compensation current instruction value so that an amplitude ofthe compensation current to flow through the electric motor becomesproportional to the load correspondence quantity; and a phase correctingunit which corrects a phase of the compensation current instructionvalue in accordance with the rotation speed so as to compensate for aphase delay due to the frequency characteristic of the current controlsystem.